package com.peas.platform.module.icims.base.sys.adapter.repository.po;

import java.util.*;
import java.math.*;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.peas.platform.framework.mybatisplus.po.BasePo;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.apache.ibatis.type.JdbcType;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;

// 编码生成
@Data
@EqualsAndHashCode(callSuper = false)
@TableName(value = "`tbl_sequence`")
public class SequencePo extends BasePo {

    //系统
    @Size(max = 100, message = "系统不能超过100个字符")
    @TableField(value = "`system`", jdbcType = JdbcType.VARCHAR)
    private String system;

    //系统名称
    @Size(max = 100, message = "系统名称不能超过100个字符")
    @TableField(value = "`system_name`", jdbcType = JdbcType.VARCHAR)
    private String systemName;

    //服务
    @Size(max = 100, message = "服务不能超过100个字符")
    @TableField(value = "`service`", jdbcType = JdbcType.VARCHAR)
    private String service;

    //服务名
    @Size(max = 200, message = "服务名不能超过200个字符")
    @TableField(value = "`service_name`", jdbcType = JdbcType.VARCHAR)
    private String serviceName;

    //模块
    @Size(max = 100, message = "模块不能超过100个字符")
    @TableField(value = "`model`", jdbcType = JdbcType.VARCHAR)
    private String model;

    //前缀
    @Size(max = 10, message = "前缀不能超过10个字符")
    @TableField(value = "`prefix`", jdbcType = JdbcType.VARCHAR)
    private String prefix;

    //生成单号
    @Size(max = 200, message = "生成单号不能超过200个字符")
    @TableField(value = "`sequence_no`", jdbcType = JdbcType.VARCHAR)
    private String sequenceNo;

    //生成递增序列
    @TableField(value = "`sequence_increment`", jdbcType = JdbcType.BIGINT)
    private Long sequenceIncrement;

    //生成时间
    @TableField(value = "`sequence_time`", jdbcType = JdbcType.TIMESTAMP)
    private Date sequenceTime;

    //生成操作用户ID
    @TableField(value = "`sequence_user`", jdbcType = JdbcType.BIGINT)
    private Long sequenceUser;

}
